package com.ruoyi.yljf.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.utils.bean.BeanUtils;
import com.ruoyi.yljf.domain.Active;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.math.BigDecimal;
import java.util.Date;
import java.util.List;

/**
 * 活动对象 yljf_active
 * 
 * @author metaee
 * @date 2025-02-13
 */
@Data
@AllArgsConstructor
@NoArgsConstructor
public class ActiveVO  {

    /** 主键id */
    private Long activeId;

    /** 活动标题 */
    private String activeName;

    /** 活动图片 */
    private String activeImg;

    /** 开始时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;

    /** 结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;

    /** 活动地址 */
    private String activeAddress;

    /** $column.columnComment */
    private String userPhone;

    /** 活动介绍 */
    private String activeInfo;

    /** 活动收费价格 */
    private BigDecimal activePrice;

    /** 书籍是否免费(Y | N) */
    private String activeFree;

    /** 活动分类（online |  offline） */
    private String activeType;

    /** 創建人头像 */
    private String userImg;

    /** 创建用户名 */
    private String userName;

    /** 创建用户id */
    private Long userId;

    /** 创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;

    /** 参与活动人数 */
    private Integer userNum;

    /**
     * 活动参与者信息
     */
    private List<ActiveUserVO> acUserList;

    /**
     * 当前登录用户是否报名
     */
    private boolean apply;





    public ActiveVO(Active active) {
        BeanUtils.copyProperties(active,this);
    }
}
